home *** CD-ROM | disk | FTP | other *** search
- #ifndef __MDUserImports__
- #define __MDUserImports__
-
- #ifndef _AFXWIN_H_
- #include <windows.h>
- #endif
-
- typedef void* MD_HANDLE;
- typedef void* MD_FINDHANDLE;
- typedef void* MD_RULEHANDLE;
-
- #define MD_BADHANDLE (MD_HANDLE)(0xFFFFFFFF)
- #define MD_BADRULEHANDLE (MD_HANDLE)-1
- #define MD_BADFINDHANDLE NULL
-
- #define MDUSERDLL_NEWUSER -1
- #define MDUSERDLL_MAXHANDLES 200
-
- #define MD_PRECEDENCE_URGENT 10
- #define MD_PRECEDENCE_HIGH 25
- #define MD_PRECEDENCE_NORMAL 50
- #define MD_PRECEDENCE_LOW 75
- #define MD_PRECEDENCE_BULK 80
- #define MD_PRECEDENCE_RETRY 90
-
- #define DOMAIN_LEN 45
- #define MAILBOX_LEN 30
- #define FULLNAME_LEN 30
- #define MAILDIR_LEN 90
- #define PASSWORD_LEN 20
- #define MAXMESSAGECOUNT_LEN 4
- #define MAXDISKSPACE_LEN 6
- #define HEADER_LEN 128
- #define MATCHTEXT_LEN 128
-
- #define MDUSERDLL_MAXMSGTO_LEN 128
- #define MDUSERDLL_MAXMSGFROM_LEN 128
- #define MDUSERDLL_MAXMSGSUBJECT_LEN 128
- #define MDUSERDLL_MAXMSGBODY_LEN 2048
-
- #define EMAIL_LEN MAILBOX_LEN+DOMAIN_LEN+1
-
- #define FWDADDR_LEN 256 // was 128
- #define FWDHOST_LEN 64
- #define FWDSENDAS_LEN 128
- #define FWDPORT_LEN 8
-
- #define AUTORESPEXCLUDE_LEN 5001
-
- #define USERDEFINED_LEN 256
-
- #define MBXFORMAT_LEN 32
-
- #define WM_MDUSERDLL_MSG (WM_USER+900)
- #define WM_MDUSERDLL_ADD WM_MDUSERDLL_MSG+1
- #define WM_MDUSERDLL_DELETE WM_MDUSERDLL_MSG+2
- #define WM_MDUSERDLL_CHANGE WM_MDUSERDLL_MSG+3
- #define WM_MDUSERDLL_LOADING WM_MDUSERDLL_MSG+4
- #define WM_MDUSERDLL_ADDSEM WM_MDUSERDLL_MSG+5
- #define WM_MDUSERDLL_DELETESEM WM_MDUSERDLL_MSG+6
- #define WM_MDUSERDLL_CHANGESEM WM_MDUSERDLL_MSG+7
-
- #define MDUSERDLL_ACCESSWORLDCLIENT 0x0001
- #define MDUSERDLL_ACCESSWEBCONFIG 0x0002
- #define MDUSERDLL_ISADMIN 0x0004
- #define MDUSERDLL_EDITFULLNAME 0x0008
- #define MDUSERDLL_EDITPASSWORD 0x0010
- #define MDUSERDLL_EDITMAILDIR 0x0020
- #define MDUSERDLL_EDITFWD 0x0040
- #define MDUSERDLL_EDITADVFWD 0x0080
- #define MDUSERDLL_EDITENCRYPT 0x0100
- #define MDUSERDLL_EDITEVERYONE 0x0200
- #define MDUSERDLL_EDITLOCALONLY 0x0400
- #define MDUSERDLL_EDITQUOTAS 0x0800
- #define MDUSERDLL_EDITMULTIPOP 0x1000
- #define MDUSERDLL_EDITAUTORESPONDER 0x2000
- #define MDUSERDLL_EDITEMAILCHANGES 0x4000
- #define MDUSERDLL_EDITIMAPRULES 0x8000
-
- #define MDUSERDLL_WEBCONFIGDEFAULTS "YYNNNYNYNNNNNNYNY"
-
- #define MDUSERDLL_VRFYACCOUNT 0x0001
- #define MDUSERDLL_VRFYMAILDIR 0x0002
- #define MDUSERDLL_VRFYFWD 0x0004
- #define MDUSERDLL_VRFYQUOTAS 0x0008
- #define MDUSERDLL_VRFYWEBCONFIG 0x0010
- #define MDUSERDLL_VRFYOPTIONS 0x0020
- #define MDUSERDLL_VRFYMULTIPOP 0x0040
- #define MDUSERDLL_VRFYSKIPDURINGADD 0x0080
- #define MDUSERDLL_VRFYAUTORESP 0x0100
- #define MDUSERDLL_VRFYALL MDUSERDLL_VRFYACCOUNT | MDUSERDLL_VRFYMAILDIR | \
- MDUSERDLL_VRFYFWD | MDUSERDLL_VRFYQUOTAS | \
- MDUSERDLL_VRFYWEBCONFIG | MDUSERDLL_VRFYOPTIONS | \
- MDUSERDLL_VRFYMULTIPOP | MDUSERDLL_VRFYAUTORESP
-
- #define MDUSERDLL_DEFMDAEMONINIDB "mdaemon.ini"
- #define MDUSERDLL_DEFUSERLISTDB "userlist.dat"
- #define MDUSERDLL_DEFCFILTERDB "cfilter.ini"
- #define MDUSERDLL_DEFDOMAINPOPDB "domainpop.ini"
- #define MDUSERDLL_DEFDPOPXTRADB "dpopxtra.dat"
- #define MDUSERDLL_DEFDOMAINDB "domains.dat"
- #define MDUSERDLL_DEFHELPDB "help.dat"
- #define MDUSERDLL_DEFDELWARNDB "delwarn.dat"
- #define MDUSERDLL_DEFDELERRDB "delerr.dat"
- #define MDUSERDLL_DEFRECEIPTDB "receipt.dat"
- #define MDUSERDLL_DEFNOCOMMANDDB "nocomd.dat"
- #define MDUSERDLL_DEFNOSUCHUSERDB "noshuser.dat"
- #define MDUSERDLL_DEFACCTINFODB "acctinfo.dat"
- #define MDUSERDLL_DEFWELCOMEDB "welcome.dat"
- //#define MDUSERDLL_DEFUIDLDB "uidl.dat"
- #define MDUSERDLL_DEFMIMETYPEDB "mimetype.dat"
- #define MDUSERDLL_DEFALIASDB "alias.dat"
- #define MDUSERDLL_DEFTRANSLATEDB "translat.dat"
- #define MDUSERDLL_DEFTRANSEXCPTDB "trexcept.dat"
- #define MDUSERDLL_DEFWEBACCESSDB "webacces.dat"
- #define MDUSERDLL_DEFRFC822TMPDB "rfc822.mbf"
- #define MDUSERDLL_DEFDIGESTTMPDB "digest.mbf"
- #define MDUSERDLL_DEFIPSHIELDDB "ipshield.dat"
- #define MDUSERDLL_DEFFWDDB "forward.dat"
- #define MDUSERDLL_DEFSIGDB "signatur.dat"
- #define MDUSERDLL_DEFMAILFORMATDB "formats.dat"
- #define MDUSERDLL_DEFAUTORESPDB "autoresp.dat"
- #define MDUSERDLL_DEFGATEWAYDB "gateways.dat"
- #define MDUSERDLL_DEFREFUSALDB "refusal.rsp"
- #define MDUSERDLL_DEFLOCALONLYDB "loconly.rsp"
- #define MDUSERDLL_DEFMULTIPOPDB "multipop.dat"
- #define MDUSERDLL_DEFIPCACHEDB "ipcache.dat"
- #define MDUSERDLL_DEFMXCACHEDB "mxcache.dat"
- #define MDUSERDLL_DEFNOCACHEDB "nocache.dat"
- #define MDUSERDLL_DEFPRIORITYDB "priority.dat"
- #define MDUSERDLL_DEFEXCEPTIONDB "excption.dat"
- #define MDUSERDLL_DEFDELUNLESSDB "dlunless.dat"
- #define MDUSERDLL_DEFFWDUNLESSDB "fwunless.dat"
- #define MDUSERDLL_DEFDVUNLESSDB "dvunless.dat"
- #define MDUSERDLL_DEFMSGIDDB "msgid.dat"
- #define MDUSERDLL_DEFLANDOMAINDB "lndomain.dat"
- #define MDUSERDLL_DEFIPSCREENDB "ipscreen.dat"
- #define MDUSERDLL_DEFRELAYDB "relay.dat"
- #define MDUSERDLL_DEFAUTHDB "authlst.dat"
- #define MDUSERDLL_DEFSPAMBLOCKERDB "spamblck.dat"
- #define MDUSERDLL_DEFSPAMCACHEDB "spamcach.dat"
- #define MDUSERDLL_DEFSPAMEXCEPTDB "spamxcpt.dat"
- #define MDUSERDLL_DEFSCHEDULEDB "schedule.dat"
- #define MDUSERDLL_DEFLDAPDB "ldap.dat"
- #define MDUSERDLL_DEFPOLICYDB "policy.dat"
- #define MDUSERDLL_DEFVARIABLEDB "vars.dat"
- #define MDUSERDLL_DEFQCOUNTSDB "qcounts.dat"
- #define MDUSERDLL_DEFMAILFORMAT "RFC822" // DON'T ADD ".MBF" to this!!
-
- #define MDUSERDLL_DOMAINDB 1
- #define MDUSERDLL_HELPDB 2
- #define MDUSERDLL_DELWARNDB 3
- #define MDUSERDLL_DELERRDB 4
- #define MDUSERDLL_RECEIPTDB 5
- #define MDUSERDLL_NOCOMMANDDB 6
- #define MDUSERDLL_NOSUCHUSERDB 7
- #define MDUSERDLL_ACCTINFODB 8
- #define MDUSERDLL_WELCOMEDB 9
- //#define MDUSERDLL_UIDLDB 10
- #define MDUSERDLL_MIMETYPEDB 11
- #define MDUSERDLL_ALIASDB 12
- #define MDUSERDLL_TRANSLATEDB 13
- #define MDUSERDLL_TRANSEXCPTDB 14
- #define MDUSERDLL_WEBACCESSDB 15
- #define MDUSERDLL_RFC822TMPDB 16
- #define MDUSERDLL_DIGESTTMPDB 17
- #define MDUSERDLL_IPSHIELDDB 18
- #define MDUSERDLL_FWDDB 19
- #define MDUSERDLL_SIGDB 20
- #define MDUSERDLL_MAILFORMATDB 21
- #define MDUSERDLL_AUTORESPDB 22
- #define MDUSERDLL_GATEWAYDB 23
- #define MDUSERDLL_REFUSALDB 24
- #define MDUSERDLL_LOCALONLYDB 25
- #define MDUSERDLL_MULTIPOPDB 26
- #define MDUSERDLL_IPCACHEDB 27
- #define MDUSERDLL_MXCACHEDB 28
- #define MDUSERDLL_NOCACHEDB 29
- #define MDUSERDLL_PRIORITYDB 30
- #define MDUSERDLL_EXCEPTIONDB 31
- #define MDUSERDLL_DELUNLESSDB 32
- #define MDUSERDLL_FWDUNLESSDB 33
- #define MDUSERDLL_DVUNLESSDB 34
- #define MDUSERDLL_MSGIDDB 35
- #define MDUSERDLL_LANDOMAINDB 36
- #define MDUSERDLL_IPSCREENDB 37
- #define MDUSERDLL_RELAYDB 38
- #define MDUSERDLL_AUTHDB 39
- #define MDUSERDLL_USERLISTDB 40
- #define MDUSERDLL_DOMAINPOPDB 41
- #define MDUSERDLL_MDAEMONINIDB 42
- #define MDUSERDLL_SPAMBLOCKERDB 43
- #define MDUSERDLL_SPAMEXCEPTDB 44
- #define MDUSERDLL_SPAMCACHEDB 45
- #define MDUSERDLL_LDAPDB 46
- #define MDUSERDLL_SCHEDULEDB 47
- #define MDUSERDLL_CFILTERDB 48
- #define MDUSERDLL_POLICYDB 49
- #define MDUSERDLL_DPOPXTRADB 50
- #define MDUSERDLL_VARIABLEDB 51
- #define MDUSERDLL_QCOUNTSDB 52
-
- #define MDUSERDLL_DUSERLISTDB 0x0001
- #define MDUSERDLL_DAUTORESPDB 0x0002
- #define MDUSERDLL_DFWDDB 0x0004
- #define MDUSERDLL_DMAILFORMATDB 0x0008
- #define MDUSERDLL_DWEBACCESSDB 0x0010
- #define MDUSERDLL_DMULTIPOPDB 0x0020
- #define MDUSERDLL_DALIASDB 0x0040
- #define MDUSERDLL_DREMOVEDIR 0x0080
- #define MDUSERDLL_DDELETEALL MDUSERDLL_DUSERLISTDB | MDUSERDLL_DAUTORESPDB | \
- MDUSERDLL_DFWDDB | MDUSERDLL_DMAILFORMATDB | \
- MDUSERDLL_DWEBACCESSDB | MDUSERDLL_DMULTIPOPDB | \
- MDUSERDLL_DALIASDB | MDUSERDLL_DREMOVEDIR
-
- #define MD_GetAccessWorldClient(i) MD_GetWebConfigBit(i, MDUSERDLL_ACCESSWORLDCLIENT)
- #define MD_GetAccessWebConfig(i) MD_GetWebConfigBit(i, MDUSERDLL_ACCESSWEBCONFIG)
- #define MD_GetIsAdmin(i) MD_GetWebConfigBit(i, MDUSERDLL_ISADMIN)
- #define MD_GetEditFullName(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITFULLNAME)
- #define MD_GetEditPassword(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITPASSWORD)
- #define MD_GetEditMailDir(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITMAILDIR)
- #define MD_GetEditFwd(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITFWD)
- #define MD_GetEditAdvFwd(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITADVFWD)
- #define MD_GetEditEncrypt(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITENCRYPT)
- #define MD_GetEditEveryone(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITEVERYONE)
- #define MD_GetEditLocalOnly(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITLOCALONLY)
- #define MD_GetEditQuotas(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITQUOTAS)
- #define MD_GetEditMultiPOP(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITMULTIPOP)
- #define MD_GetEditAutoResponder(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITAUTORESPONDER)
- #define MD_GetEditEmailChanges(i) MD_GetWebConfigBit(i, MDUSERDLL_EDITEMAILCHANGES)
-
- #define MD_SetAccessWorldClient(i,v) MD_SetWebConfigBit(i, MDUSERDLL_ACCESSWORLDCLIENT, v)
- #define MD_SetAccessWebConfig(i,v) MD_SetWebConfigBit(i, MDUSERDLL_ACCESSWEBCONFIG, v)
- #define MD_SetIsAdmin(i,v) MD_SetWebConfigBit(i, MDUSERDLL_ISADMIN, v)
- #define MD_SetEditFullName(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITFULLNAME, v)
- #define MD_SetEditPassword(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITPASSWORD, v)
- #define MD_SetEditMailDir(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITMAILDIR, v)
- #define MD_SetEditFwd(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITFWD, v)
- #define MD_SetEditAdvFwd(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITADVFWD, v)
- #define MD_SetEditEncrypt(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITENCRYPT, v)
- #define MD_SetEditEveryone(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITEVERYONE, v)
- #define MD_SetEditLocalOnly(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITLOCALONLY, v)
- #define MD_SetEditQuotas(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITQUOTAS, v)
- #define MD_SetEditMultiPOP(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITMULTIPOP, v)
- #define MD_SetEditAutoResponder(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITAUTORESPONDER, v)
- #define MD_SetEditEmailChanges(i,v) MD_SetWebConfigBit(i, MDUSERDLL_EDITEMAILCHANGES, v)
-
- #define MDDLLERR_NOTFOUND -1
- #define MDDLLERR_BASE (WM_USER+300)
- #define MDDLLERR_LDAP_BASE 1600
- #define MDDLLERR_NOERROR 0 // no errors with MD_UserInfo structure found
- #define MDDLLERR_MBXHASDOMAIN (MDDLLERR_BASE+0) // mailbox value contains a domain name
- #define MDDLLERR_USEREXISTS (MDDLLERR_BASE+1) // mailbox and/or real name is already in use
- #define MDDLLERR_INVALIDFULLNAME (MDDLLERR_BASE+2) // real name is missing/invalid
- #define MDDLLERR_INVALIDMAILBOX (MDDLLERR_BASE+3) // mailbox is missing/invalid
- #define MDDLLERR_INVALIDMAILDIR (MDDLLERR_BASE+4) // mail directory missing/invalid
- #define MDDLLERR_INVALIDPASSWORD (MDDLLERR_BASE+5) // password is missing/invalid/too long
- #define MDDLLERR_INVALIDFWD (MDDLLERR_BASE+6) // forwarding address data missing/invalid
- #define MDDLLERR_POSTMASTER (MDDLLERR_BASE+7) // postmaster must be an alias
- #define MDDLLERR_LOGONINUSE (MDDLLERR_BASE+8) // pop logon value already in use
- #define MDDLLERR_INVALIDCNTQUOTA (MDDLLERR_BASE+9) // count quota missing/invalid
- #define MDDLLERR_INVALIDDISKQUOTA (MDDLLERR_BASE+10) // disk quota missing/invalid
- #define MDDLLERR_CANTCREATEMAILDIR (MDDLLERR_BASE+12) // can't create the mail folder
- #define MDDLLERR_CANTCREATEFILEDIR (MDDLLERR_BASE+13) // can't create the file folder
- #define MDDLLERR_TOOMANYACCOUNTS (MDDLLERR_BASE+14) // license size has been reached
- #define MDDLLERR_INVALIDRECORD (MDDLLERR_BASE+15) // MD_UserRecord is invalid
-
- #define MDDLLERR_MISSINGTO (MDDLLERR_BASE+16) // MD_MessageInfo has no TO value
- #define MDDLLERR_MISSINGFROM (MDDLLERR_BASE+17) // MD_MessageInfo has no FROM value
- #define MDDLLERR_MISSINGBODY (MDDLLERR_BASE+18) // MD_MessageInfo has no BODY
- #define MDDLLERR_MISSINGBODYFILE (MDDLLERR_BASE+19) // MD_MessageInfo specified body file which doesn't exist
- #define MDDLLERR_MISSINGATTACHMENTFILE (MDDLLERR_BASE+20) // MD_MessageInfo specified attachment file which doesn't exist
- #define MDDLLERR_MISSINGRAWPATH (MDDLLERR_BASE+21) // Raw file directory was not present in MDaemon.ini file
- #define MDDLLERR_CANTGENRAWFILENAME (MDDLLERR_BASE+22) // Can't generate a new raw file name GetLastErr() will say why.
- #define MDDLLERR_CANTLOCKRAWFILE (MDDLLERR_BASE+23) // The raw lock file could not be created
- #define MDDLLERR_CANTCREATERAWFILE (MDDLLERR_BASE+24) // Can't create the RAW message file.
- #define MDDLLERR_CANTACCESSBODYFILE (MDDLLERR_BASE+25) // The body file could not be opened
-
- #define LDAP_ADDRBOOKDISABLED 0x100
- #define LDAP_DLLERROR 0x101
- #define LDAP_ACCOUNTHIDDEN 0x102
-
- #ifndef __RESOURCE__
-
- #ifdef __BORLANDC__
- #pragma option -a8
- #else
- #pragma pack(push, 8)
- #endif
-
- struct MD_UserInfo
- {
- char Email[EMAIL_LEN+1];
- char Mailbox[MAILBOX_LEN+1];
- char Domain[DOMAIN_LEN+1];
- char FullName[FULLNAME_LEN+1];
- char MailDir[MAILDIR_LEN+1];
- char Password[PASSWORD_LEN+1];
- bool AutoDecode;
- bool IsForwarding;
- bool AllowAccess;
- bool AllowChangeViaEmail;
- bool KeepForwardedMail;
- bool HideFromEveryone;
- bool EncryptMail;
- bool ApplyQuotas;
- bool EnableMultiPOP;
- bool LocalOnly;
- long MaxMessageCount;
- long MaxDiskSpace;
-
- int WebConfig;
-
- char FwdAddress[FWDADDR_LEN+1];
- char FwdHost[FWDHOST_LEN+1];
- char FwdSendAs[FWDSENDAS_LEN+1];
- char FwdPort[FWDPORT_LEN+1];
- char NTAccount[MAILBOX_LEN+1];
- char MailFormat[MBXFORMAT_LEN+1];
-
- char AutoRespScript[MAX_PATH+1];
- char AutoRespProcess[MAX_PATH+1];
- char AutoRespExclude[AUTORESPEXCLUDE_LEN+1];
- char AddToList[EMAIL_LEN+1];
- char RemoveFromList[EMAIL_LEN+1];
- bool PassMessageToProcess;
-
- long MaxUIDLCount;
- long MaxMessageSize;
-
- char UserDefined[USERDEFINED_LEN+1];
- };
-
- struct MD_MessageInfo
- {
- char To[MDUSERDLL_MAXMSGTO_LEN+1];
- char From[MDUSERDLL_MAXMSGFROM_LEN+1];
- char Subject[MDUSERDLL_MAXMSGSUBJECT_LEN+1];
-
- char MessageBody[MDUSERDLL_MAXMSGBODY_LEN+1];
- char BodyFilePath[MAX_PATH+1];
-
- char AttachmentFilePath[MAX_PATH+1];
- bool RemoveAttachment;
-
- int Priority;
- };
-
- #define MDUSERDLL_ISEQUALTO 1
- #define MDUSERDLL_ISNOTEQUALTO 2
- #define MDUSERDLL_CONTAINS 3
- #define MDUSERDLL_DOESNOTCONTAIN 4
-
- struct MD_Rule
- {
- char Header[HEADER_LEN+1];
- char MatchText[MATCHTEXT_LEN+1];
- char Folder[MAX_PATH+1];
- int Relation;
- };
-
- #ifdef __BORLANDC__
- #pragma option -a.
- #else
- #pragma pack(pop)
- #endif
-
- #ifndef MDUSER_DLL
-
- extern bool MDUserDllLoaded;
- extern HINSTANCE hMDUSER;
-
- bool LoadMDUserDll(char* MDUserDll = NULL, bool LoadUsers = true, bool IgnoreFail = false);
- bool LoadMDUserDll(int&, char* MDUserDll = NULL, bool LoadUsers = true, bool IgnoreFail = false);
- void FreeMDUserDll();
-
- typedef void (_stdcall *MD_FlagReloadUsersP)();
- typedef void (_stdcall *MD_InitMessageInfoP)(MD_MessageInfo*);
- typedef MD_UserInfo* (_stdcall *MD_GetSharedUserInfoP)();
- typedef int (_stdcall *MD_VerifyMessageInfoP)(MD_MessageInfo*);
- typedef int (_stdcall *MD_SpoolMessageP)(MD_MessageInfo*);
- typedef void (_stdcall *MD_GetDomainNamesP)(char*, int);
- typedef int (_stdcall *MD_GetDomainCountP)();
- typedef char* (_stdcall *MD_GetDomainNameUsingIPP)(const char*, char*, int);
- typedef char* (_stdcall *MD_FilterStringP)(char*, int, MD_UserInfo*);
- typedef void (_stdcall *MD_FilterUserInfoP)(MD_UserInfo*);
- typedef bool (_stdcall *MD_RegisterWindowP)(HWND);
- typedef bool (_stdcall *MD_UnregisterWindowP)(HWND);
- typedef void (_stdcall *MD_ReloadUsersP)();
- typedef char* (_stdcall *MD_GetAppDirP)(const char*, int);
- typedef void (_stdcall *MD_SetIsMDConfigP)(bool);
- typedef bool (_stdcall *MD_GetDBPathP)(char*, int);
- typedef void (_stdcall *MD_InitUserInfoP)(MD_UserInfo*);
- typedef int (_stdcall *MD_AddUserP)(MD_UserInfo*, int);
- typedef void (_stdcall *MD_ChangeUserP)(MD_UserInfo*, char*, bool);
- typedef bool (_stdcall *MD_DeleteUserP)(char*, int);
- typedef int (_stdcall *MD_VerifyUserInfoP)(MD_UserInfo*, int);
- typedef int (_stdcall *MD_UserCountP)();
- typedef bool (_stdcall *MD_IsProVersionP)();
- typedef MD_FINDHANDLE (_stdcall *MD_FindFirstP)(MD_HANDLE*);
- typedef bool (_stdcall *MD_FindNextP)(MD_FINDHANDLE, MD_HANDLE*);
- typedef void (_stdcall *MD_FindCloseP)(MD_FINDHANDLE);
- typedef MD_RULEHANDLE (_stdcall *MD_FindFirstRuleP)(MD_HANDLE, MD_Rule*);
- typedef bool (_stdcall *MD_FindNextRuleP)(MD_HANDLE, MD_RULEHANDLE*, MD_Rule*);
- typedef bool (_stdcall *MD_GetEditIMAPRulesP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetEditIMAPRulesP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_ReadRuleP)(MD_HANDLE, int, MD_Rule*);
- typedef bool (_stdcall *MD_MoveRuleUpP)(MD_HANDLE, MD_RULEHANDLE);
- typedef bool (_stdcall *MD_MoveRuleDownP)(MD_HANDLE, MD_RULEHANDLE);
- typedef bool (_stdcall *MD_RuleStructToRuleStringP)(MD_Rule*, char*, int);
- typedef bool (_stdcall *MD_RuleStringToRuleStructP)(char*, MD_Rule*);
- typedef bool (_stdcall *MD_DeleteRuleP)(MD_HANDLE, MD_RULEHANDLE);
- typedef bool (_stdcall *MD_AddRuleP)(MD_HANDLE, MD_Rule*);
- typedef bool (_stdcall *MD_ChangeRuleP)(MD_HANDLE, MD_RULEHANDLE, MD_Rule*);
- typedef bool (_stdcall *MD_GetIMAPFoldersP)(MD_HANDLE, char*, int);
- typedef bool (_stdcall *MD_CreateIMAPFolderP)(MD_HANDLE, char*, char*);
- typedef bool (_stdcall *MD_ValidateUserP)(MD_HANDLE, const char*);
- typedef bool (_stdcall *MD_LogonUserP)(char*, const char*, const char*);
- typedef MD_HANDLE (_stdcall *MD_GetByAliasP)(char*, const char*);
- typedef MD_UserInfo* (_stdcall *MD_GetUserInfoP)(MD_HANDLE, MD_UserInfo*);
- typedef bool (_stdcall *MD_SetUserInfoP)(MD_HANDLE, MD_UserInfo*);
- typedef bool (_stdcall *MD_UserExistsP)(const char *address);
- typedef MD_HANDLE (_stdcall *MD_GetByEmailP)(const char*);
- typedef MD_HANDLE (_stdcall *MD_GetByFullNameP)(const char*, const char*);
- typedef MD_HANDLE (_stdcall *MD_GetByMailboxP)(const char*, const char*);
- typedef MD_HANDLE (_stdcall *MD_GetByMailDirP)(const char*, const char*);
- typedef void (_stdcall *MD_GetFreeP)(MD_HANDLE);
- typedef char* (_stdcall *MD_GetEmailP)(MD_HANDLE, char*);
- typedef char* (_stdcall *MD_GetMailboxP)(MD_HANDLE, char*);
- typedef void (_stdcall *MD_SetMailboxP)(MD_HANDLE, const char*);
- typedef char* (_stdcall *MD_GetDomainP)(MD_HANDLE, char*);
- typedef void (_stdcall *MD_SetDomainP)(MD_HANDLE, const char*);
- typedef char* (_stdcall *MD_GetFullNameP)(MD_HANDLE, char*);
- typedef void (_stdcall *MD_SetFullNameP)(MD_HANDLE, const char*);
- typedef char* (_stdcall *MD_GetMailDirP)(MD_HANDLE, char*);
- typedef void (_stdcall *MD_SetMailDirP)(MD_HANDLE, const char*);
- typedef char* (_stdcall *MD_GetPasswordP)(MD_HANDLE, char*);
- typedef void (_stdcall *MD_SetPasswordP)(MD_HANDLE, const char*);
- typedef bool (_stdcall *MD_GetAutoDecodeP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetAutoDecodeP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_GetIsForwardingP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetIsForwardingP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_GetAllowAccessP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetAllowAccessP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_GetAllowChangeViaEmailP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetAllowChangeViaEmailP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_GetKeepForwardedMailP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetKeepForwardedMailP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_GetHideFromEveryoneP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetHideFromEveryoneP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_GetEncryptMailP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetEncryptMailP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_GetApplyQuotasP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetApplyQuotasP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_GetEnableMultiPOPP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetEnableMultiPOPP)(MD_HANDLE, bool);
- typedef bool (_stdcall *MD_GetLocalOnlyP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetLocalOnlyP)(MD_HANDLE, bool);
- typedef long (_stdcall *MD_GetMaxMessageCountP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetMaxMessageCountP)(MD_HANDLE, long);
- typedef long (_stdcall *MD_GetMaxDiskSpaceP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetMaxDiskSpaceP)(MD_HANDLE, long);
- typedef void (_stdcall *MD_GetForwardingInfoP)(MD_HANDLE, char*, char*, char*, char*);
- typedef bool (_stdcall *MD_SetForwardingInfoP)(MD_HANDLE, const char*, const char*, const char*, const char*);
- typedef void (_stdcall *MD_GetAutoRespInfoP)(MD_HANDLE, char*, char*, char*, char*, char*, bool&);
- typedef bool (_stdcall *MD_SetAutoRespInfoP)(MD_HANDLE, const char*, const char*, const char*, const char*, const char*, bool);
- typedef bool (_stdcall *MD_EraseAutoRespP)(MD_HANDLE);
- typedef void (_stdcall *MD_UpdateAutoRespDomainsP)(const char*, const char*);
- typedef char* (_stdcall *MD_GetMailFormatP)(MD_HANDLE, char*);
- typedef char* (_stdcall *MD_SetMailFormatP)(MD_HANDLE, const char*);
- typedef char* (_stdcall *MD_GetSignatureFileP)(MD_HANDLE, char*);
- typedef char* (_stdcall *MD_SetSignatureFileP)(MD_HANDLE, const char*);
- typedef long (_stdcall *MD_GetFileCountP)(MD_HANDLE);
- typedef long (_stdcall *MD_GetDirSizeP)(MD_HANDLE);
- typedef bool (_stdcall *MD_GetWebConfigBitP)(MD_HANDLE, int);
- typedef int (_stdcall *MD_GetWebConfigBitsP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetWebConfigBitP)(MD_HANDLE, int, bool);
- typedef void (_stdcall *MD_SetWebConfigBitsP)(MD_HANDLE, int);
- typedef bool (_stdcall *MD_IsDynamicPasswordStrP)(char*);
- typedef long (_stdcall *MD_GetMaxUIDLCountP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetMaxUIDLCountP)(MD_HANDLE, long);
- typedef long (_stdcall *MD_GetMaxMessageSizeP)(MD_HANDLE);
- typedef void (_stdcall *MD_SetMaxMessageSizeP)(MD_HANDLE, long);
- typedef int (_stdcall *MD_AddToLdapAddrBookP)(MD_UserInfo*);
-
- extern MD_FlagReloadUsersP MD_FlagReloadUsers;
- extern MD_InitMessageInfoP MD_InitMessageInfo;
- extern MD_GetSharedUserInfoP MD_GetSharedUserInfo;
- extern MD_VerifyMessageInfoP MD_VerifyMessageInfo;
- extern MD_SpoolMessageP MD_SpoolMessage;
- extern MD_GetDomainNamesP MD_GetDomainNames;
- extern MD_GetDomainCountP MD_GetDomainCount;
- extern MD_GetDomainNameUsingIPP MD_GetDomainNameUsingIP;
- extern MD_FilterStringP MD_FilterString;
- extern MD_FilterUserInfoP MD_FilterUserInfo;
- extern MD_ReloadUsersP MD_ReloadUsers;
- extern MD_RegisterWindowP MD_RegisterWindow;
- extern MD_UnregisterWindowP MD_UnregisterWindow;
- extern MD_InitUserInfoP MD_InitUserInfo;
- extern MD_AddUserP MD_AddUser;
- extern MD_ChangeUserP MD_ChangeUser;
- extern MD_DeleteUserP MD_DeleteUser;
- extern MD_VerifyUserInfoP MD_VerifyUserInfo;
- extern MD_GetAppDirP MD_GetAppDir;
- extern MD_SetIsMDConfigP MD_SetIsMDConfig;
- extern MD_GetDBPathP MD_GetDBPath;
- extern MD_UserCountP MD_UserCount;
- extern MD_IsProVersionP MD_IsProVersion;
- extern MD_FindFirstP MD_FindFirst;
- extern MD_FindNextP MD_FindNext;
- extern MD_FindCloseP MD_FindClose;
- extern MD_FindFirstRuleP MD_FindFirstRule;
- extern MD_FindNextRuleP MD_FindNextRule;
- extern MD_GetEditIMAPRulesP MD_GetEditIMAPRules;
- extern MD_SetEditIMAPRulesP MD_SetEditIMAPRules;
- extern MD_ReadRuleP MD_ReadRule;
- extern MD_MoveRuleUpP MD_MoveRuleUp;
- extern MD_MoveRuleDownP MD_MoveRuleDown;
- extern MD_RuleStringToRuleStructP MD_RuleStringToRuleStruct;
- extern MD_RuleStructToRuleStringP MD_RuleStructToRuleString;
- extern MD_AddRuleP MD_AddRule;
- extern MD_DeleteRuleP MD_DeleteRule;
- extern MD_ChangeRuleP MD_ChangeRule;
- extern MD_GetIMAPFoldersP MD_GetIMAPFolders;
- extern MD_CreateIMAPFolderP MD_CreateIMAPFolder;
- extern MD_ValidateUserP MD_ValidateUser;
- extern MD_LogonUserP MD_LogonUser;
- extern MD_GetByAliasP MD_GetByAlias;
- extern MD_UserExistsP MD_UserExists;
- extern MD_GetByEmailP MD_GetByEmail;
- extern MD_GetByFullNameP MD_GetByFullName;
- extern MD_GetByMailboxP MD_GetByMailbox;
- extern MD_GetByMailDirP MD_GetByMailDir;
- extern MD_GetFreeP MD_GetFree;
- extern MD_GetUserInfoP MD_GetUserInfo;
- extern MD_SetUserInfoP MD_SetUserInfo;
- extern MD_GetEmailP MD_GetEmail;
- extern MD_GetMailboxP MD_GetMailbox;
- extern MD_SetMailboxP MD_SetMailbox;
- extern MD_GetDomainP MD_GetDomain;
- extern MD_SetDomainP MD_SetDomain;
- extern MD_GetFullNameP MD_GetFullName;
- extern MD_SetFullNameP MD_SetFullName;
- extern MD_GetMailDirP MD_GetMailDir;
- extern MD_SetMailDirP MD_SetMailDir;
- extern MD_GetPasswordP MD_GetPassword;
- extern MD_SetPasswordP MD_SetPassword;
- extern MD_GetAutoDecodeP MD_GetAutoDecode;
- extern MD_SetAutoDecodeP MD_SetAutoDecode;
- extern MD_GetIsForwardingP MD_GetIsForwarding;
- extern MD_SetIsForwardingP MD_SetIsForwarding;
- extern MD_GetAllowAccessP MD_GetAllowAccess;
- extern MD_SetAllowAccessP MD_SetAllowAccess;
- extern MD_GetAllowChangeViaEmailP MD_GetAllowChangeViaEmail;
- extern MD_SetAllowChangeViaEmailP MD_SetAllowChangeViaEmail;
- extern MD_GetKeepForwardedMailP MD_GetKeepForwardedMail;
- extern MD_SetKeepForwardedMailP MD_SetKeepForwardedMail;
- extern MD_GetHideFromEveryoneP MD_GetHideFromEveryone;
- extern MD_SetHideFromEveryoneP MD_SetHideFromEveryone;
- extern MD_GetEncryptMailP MD_GetEncryptMail;
- extern MD_SetEncryptMailP MD_SetEncryptMail;
- extern MD_GetApplyQuotasP MD_GetApplyQuotas;
- extern MD_SetApplyQuotasP MD_SetApplyQuotas;
- extern MD_GetEnableMultiPOPP MD_GetEnableMultiPOP;
- extern MD_SetEnableMultiPOPP MD_SetEnableMultiPOP;
- extern MD_GetLocalOnlyP MD_GetLocalOnly;
- extern MD_SetLocalOnlyP MD_SetLocalOnly;
- extern MD_GetMaxMessageCountP MD_GetMaxMessageCount;
- extern MD_SetMaxMessageCountP MD_SetMaxMessageCount;
- extern MD_GetMaxDiskSpaceP MD_GetMaxDiskSpace;
- extern MD_SetMaxDiskSpaceP MD_SetMaxDiskSpace;
- extern MD_GetForwardingInfoP MD_GetForwardingInfo;
- extern MD_SetForwardingInfoP MD_SetForwardingInfo;
- extern MD_GetAutoRespInfoP MD_GetAutoRespInfo;
- extern MD_SetAutoRespInfoP MD_SetAutoRespInfo;
- extern MD_EraseAutoRespP MD_EraseAutoResp;
- extern MD_UpdateAutoRespDomainsP MD_UpdateAutoRespDomains;
- extern MD_GetMailFormatP MD_GetMailFormat;
- extern MD_SetMailFormatP MD_SetMailFormat;
- extern MD_GetSignatureFileP MD_GetSignatureFile;
- extern MD_SetSignatureFileP MD_SetSignatureFile;
- extern MD_GetFileCountP MD_GetFileCount;
- extern MD_GetDirSizeP MD_GetDirSize;
- extern MD_GetWebConfigBitP MD_GetWebConfigBit;
- extern MD_GetWebConfigBitsP MD_GetWebConfigBits;
- extern MD_SetWebConfigBitP MD_SetWebConfigBit;
- extern MD_SetWebConfigBitsP MD_SetWebConfigBits;
- extern MD_IsDynamicPasswordStrP MD_IsDynamicPasswordStr;
- extern MD_GetMaxUIDLCountP MD_GetMaxUIDLCount;
- extern MD_SetMaxUIDLCountP MD_SetMaxUIDLCount;
- extern MD_GetMaxMessageSizeP MD_GetMaxMessageSize;
- extern MD_SetMaxMessageSizeP MD_SetMaxMessageSize;
- extern MD_AddToLdapAddrBookP MD_AddToLdapAddrBook;
-
-
- #endif // !MDUSER_DLL
-
- #endif // !__RESOURCE__
-
- #endif
-